package Managed.Alarm is

  type Alarm_Command_Type is (Play, Stop);

  protected Command is
    procedure Set_Alarm(Which : in Integer);
    procedure Set(cmd : in Alarm_Command_Type);
    function Retrieve return Alarm_Command_Type;
    function Retrieve_Alarm return Integer;
  private
    Alarm   : Integer;
    Command : Alarm_Command_Type := Stop;
  end Command;

end Managed.Alarm;
